home *** CD-ROM | disk | FTP | other *** search
- // --------------------------------------------------------------------------------------------------------------
- //
- // MPackMUI V1.01 Main Module
- //
- // --------------------------------------------------------------------------------------------------------------
-
- #include "MPackMUI.h"
-
- // --------------------------------------------------------------------------------------------------------------
-
- int main(int ac, char *av[])
- {
- // Open any required libraries
-
- OpenLibraries();
-
- // Open MIME preferences or use defaults
-
- OpenPrefs("ENV:MPackMUI.Prefs");
-
- // Create the GUI
-
- CreateGUI();
-
- // Enter IDCMP loop
-
- HandleIDCMP();
-
- // Free all system resources
-
- CleanUp();
- } /* main() */
-
- // --------------------------------------------------------------------------------------------------------------
-
- void wbmain(struct WBStartup *wbstartup)
- {
- // Program run from WB, just call main()
-
- main(0, (char **)wbstartup);
- } /* wbmain() */
-
- // --------------------------------------------------------------------------------------------------------------
-
- void OpenLibraries()
- {
- // Open any required libraries
-
- if (!(MUIMasterBase = OpenLibrary("muimaster.library", MUIMASTER_VMIN)))
- {
- DoEasyReq("Couldn't open muimaster.library");
- CleanUp();
- } /* if */
- } /* OpenLibraries() */
-
- // --------------------------------------------------------------------------------------------------------------
-
- void HandleIDCMP()
- {
- ULONG sigs = 0;
-
- // Enter IDCMP loop
-
- while (Running)
- {
- switch(DoMethod(App, MUIM_Application_NewInput, &sigs))
- {
- case MUIV_Application_ReturnID_Quit:
-
- Running = FALSE;
-
- break;
-
- } /* switch */
-
- if (sigs)
- {
- sigs = Wait(sigs | SIGBREAKF_CTRL_C);
-
- if (sigs & SIGBREAKF_CTRL_C)
- {
- break;
- } /* if */
- } /* if */
- } /* while */
- } /* HandleIDCMP() */
-
- // --------------------------------------------------------------------------------------------------------------
-
- void CleanUp()
- {
- UWORD loop;
-
- // Free all system resources
-
- if (Windows[WID_MAIN])
- set(Windows[WID_MAIN], MUIA_Window_Open, FALSE);
- if (App)
- DisposeObject(App);
-
- // Free MIME types list
-
- FreeList(&MIMEList);
-
- // Free MIME types array
-
- loop = 0;
-
- while (MIMETypes[loop])
- {
- FreeMem(MIMETypes[loop], 256);
-
- loop++;
- } /* while */
-
- if (MUIMasterBase)
- CloseLibrary(MUIMasterBase);
-
- exit(0);
- } /* CleanUp() */
-
- // --------------------------------------------------------------------------------------------------------------
-
- // End Of Text
-